This invention relates to a main memory control system for controlling the main memory of a computer, more particularly to a system with improved means of initializing the main memory.
The main memory of a modern computer generally comprises dynamic random access memory elements which must be periodically refreshed by reading the data stored in the memory elements and writing the same data again in the same locations. The refreshing process is controlled by a main memory control system, which also controls access to the main memory by the computer's central processing unit. In addition, when the computer's power is switched on, before the main memory is used it is initialized by writing initial data, such as zero, in all memory locations.
One initialization method uses software. A program contains a loop that generates successive addresses covering the entire address range of the main memory unit, and writes initial data at these addresses one by one. Such a program can be stored in the computer's control memory, or incorporated into its operating-system software, so this method does not require any extra hardware. The time taken by the central processing unit to execute the instructions in the loop, however, makes this method slow, taking as long as half an hour to initialize a large main memory.
Another method employs special initialization hardware in the main memory control system. The hardware comprises a circuit such as a counter for generating successive main memory addresses, another circuit for generating initial data to be written at these addresses, and further circuits for writing the data at the generated addresses. Another requirement is a three-to-one multiplexer for selecting addresses and data from the central processing unit for ordinary access, addresses and data from the special hardware for initialization, or refresh addresses.
Existing special hardware systems can initialize a main memory much faster than can software, but the amount of special hardware required adds significantly to the size and cost of the main memory control system. Moreover, in computers with very large main memories, even this special hardware is not as fast as could be desired.